Many techniques are known for encoding a stream of binary data for storage on a medium such as a magnetic tape, CD, or DVD, and for decoding the stored data for playback. Those skilled in the art appreciate that data or information in binary form includes data bits in which the information in each bit is in the form of one or the other of two logical states. Such states are referred to as the logical “1” and the logical “0” states. In operating with information in binary form, it is necessary to distinguish the respective logical states for each bit during the encoding/decoding process. Each bit of information may be said to be maintained in a bit cell that represents an interval in time or space that contains the respective bit of information. The interval is typically determined by some sort of sampling interval or timing pulse. The respective logic states may be referred to variously as “yes” or “no,” “+” or “−,” “up” or “down,” “true” or “not true,” and the like. For purposes of this invention, it makes no difference which of the two states is called a “1” state and which is called a “0” state.
One technique for transmitting digital data and/or for storing such digital data is that utilized in the recording and reproducing system disclosed by A. Miller in U.S. Pat. No. 3,108,261. The so-called Miller code represents logical “1” by signal transitions at a particular location in the respective bit cells (mid-cell) and logical “0” by signal transitions at a different particular location in the respective bit cells (at the beginning or leading edge of each bit cell). The Miller code also suppresses any transition occurring at the beginning of one bit interval following a bit interval containing a transition at the center.
Numerous techniques have been proposed over the years to improve upon the Miller code. For example, J. Miller proposes in U.S. Pat. Nos. 4,027,335 and 4,234,897 to remove the DC component from the Miller code by providing indicating signals that indicate bit states that might introduce a DC component and modifying the code to eliminate the DC component. One proposed technique for modifying the code is to encode pairs of bit states by a single transition early in the first bit-cell of the pair of bit states. Others, such as Webster et al. in U.S. Pat. No. 4,617,553, modify the Miller code by breaking the digital data stream into a sequence of blocks delineated by a one-to-zero transition at the beginning of each block and further subdividing each block such that the first half contains only zeros and the second half contains only ones. The number of zeros and ones are counted and encoded based on whether the number of ones and zeros is odd or even. On the other hand, Gallo in U.S. Pat. No. 4,181,817 converts pulses for each level transition into a pair of complementary level pulses for transmission. A single level pulse is produced from the transmitted complementary level pulses when the instantaneous level of both of the complementary pulses are the same during a transition and thereafter an output signal is provided having a level transition for each pulse.
In each of these prior art techniques, a single bit of digital data is represented in each cell by its location within that cell. However, multiple bits of digital data are not encoded within a cell, and the polarity of the bits within each cell is not used in conjunction with the bit location within the cell to provide further data encoding within each cell. In the current technology environment where it is desired to compress as much data as possible into as small a recording medium as possible, it is desired to extend the Miller coding scheme to provide data compression to at least double the recording density of the medium without increasing the data rate. The present invention addresses this need in the art.